<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Loadable kernel module</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Loadable_kernel_module"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Loadable_kernel_module rootpage-Loadable_kernel_module skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Loadable kernel module</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p>A <b>loadable kernel module</b> (LKM) is an <a href="Executable" title="Executable">executable</a> <a href="Library_(computing)" title="Library (computing)">library</a> that <a href="Extensibility" title="Extensibility">extends</a> the capabilities of a running <a href="Kernel_(operating_system)" title="Kernel (operating system)">kernel</a>, or so-called <i>base kernel</i>, of an <a href="Operating_system" title="Operating system">operating system</a>. LKMs are typically used to add support for new <a href="Computer_hardware" title="Computer hardware">hardware</a> (as <a href="Device_driver" title="Device driver">device drivers</a>) and/or <a href="Filesystem" class="mw-redirect" title="Filesystem">filesystems</a>, or for adding <a href="System_call" title="System call">system calls</a>. When the functionality provided by an LKM is no longer required, it can be unloaded in order to free <a href="Computer_storage" class="mw-redirect" title="Computer storage">memory</a> and other resources.
</p><p>Most current <a href="Unix-like" title="Unix-like">Unix-like</a> systems and <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a> support loadable kernel modules but with different names, such as <b>kernel loadable module</b> (kld) in <a href="FreeBSD" title="FreeBSD">FreeBSD</a>, <b>kernel extension</b> (kext) in <a href="MacOS" title="MacOS">macOS</a> (although support for third-party modules is being dropped<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>),<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> <b>kernel extension module</b> in <a href="AIX" class="mw-redirect" title="AIX">AIX</a>, <b>dynamically loadable kernel module</b> in <a href="HP-UX" title="HP-UX">HP-UX</a>,<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> <b>kernel-mode driver</b> in <a href="Windows_NT" title="Windows NT">Windows NT</a><sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> and <b>downloadable kernel module</b> (DKM) in <a href="VxWorks" title="VxWorks">VxWorks</a>. They are also known as <b>kernel loadable module</b> (KLM), or simply as <b>kernel module</b> (KMOD).
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Advantages">Advantages</h2></div>
<p>Without loadable kernel modules, an operating system would have to include all possible anticipated functionality compiled directly into the base kernel. Much of that functionality would reside in memory without being used, wasting memory , and would require that users rebuild and reboot the base kernel every time they require new functionality.
</p>
<div class="mw-heading mw-heading2"><h2 id="Disadvantages">Disadvantages</h2></div>
<p>One minor criticism of preferring a modular kernel over a static kernel is the so-called <i><a href="Fragmentation_(computing)" title="Fragmentation (computing)">fragmentation</a> penalty</i>. The base kernel is always unpacked into real contiguous <a href="Random-access_memory" title="Random-access memory">memory</a> by its setup routines; thus, the base kernel code is never fragmented. Once the system is in a state in which modules may be inserted, for example once the <a href="Filesystem" class="mw-redirect" title="Filesystem">filesystems</a> have been <a href="Mount_(computing)" title="Mount (computing)">mounted</a> that contain the modules, it is likely that any new kernel code insertion will cause the kernel to become fragmented, thereby introducing a minor performance penalty by using more <a href="Translation_lookaside_buffer" title="Translation lookaside buffer">TLB</a> entries, causing more TLB misses.
</p>
<div class="mw-heading mw-heading2"><h2 id="Implementations_in_different_operating_systems">Implementations in different operating systems</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Linux">Linux</h3></div>
<p>Loadable kernel modules in Linux are loaded (and unloaded) by the <code><a href="Modprobe" title="Modprobe">modprobe</a></code> command. They are located in <code>/lib/modules</code> or <code>/usr/lib/modules</code> and have had the extension <code>.ko</code> ("kernel object") since version 2.6 (previous versions used the <code>.o</code> extension).<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> The <code><a href="Lsmod" title="Lsmod">lsmod</a></code> command lists the loaded kernel modules. In emergency cases, when the system fails to boot due to e.g. broken modules, specific modules can be enabled or disabled by modifying the kernel boot parameters list (for example, if using <a href="GNU_GRUB" title="GNU GRUB">GRUB</a>, by pressing 'e' in the GRUB start menu, then editing the kernel parameter line).
</p>
<div class="mw-heading mw-heading4"><h4 id="License_issues">License issues</h4></div>
<p>In the opinion of Linux maintainers, LKM are <a href="Derivative_work" title="Derivative work">derived works</a> of the kernel. The Linux maintainers tolerate the distribution of <a href="Proprietary_software" title="Proprietary software">proprietary</a> modules (such as <a href="NVIDIA_GPU" class="mw-redirect" title="NVIDIA GPU">NVIDIA GPU</a> drivers), but allow only <a href="GNU_General_Public_License" title="GNU General Public License">GNU General Public License</a> (GPL) modules to merge to kernel tree of mainline Linux kernel.
</p><p>Loading a proprietary or non-GPL-compatible module will set a 'taint' flag<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> in the running kernel—meaning that any problems or bugs experienced will be less likely to be investigated by the maintainers.<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> LKMs effectively become part of the running kernel, so can corrupt kernel data structures and produce bugs that may not be able to be investigated if the module is indeed proprietary.
</p>
<div class="mw-heading mw-heading4"><h4 id="Linuxant_controversy">Linuxant controversy</h4></div>
<p>In 2004, Linuxant, a consulting company that releases proprietary <a href="Device_driver" title="Device driver">device drivers</a> as loadable kernel modules, attempted to abuse a <a href="Null_character" title="Null character">null terminator</a> in their <code>MODULE_LICENSE</code>, as visible in the following code excerpt:
</p>
<div class="mw-highlight mw-highlight-lang-c mw-content-ltr" dir="ltr"><pre><span class="n">MODULE_LICENSE</span><span class="p">(</span><span class="s">"GPL</span><span class="se">\0</span><span class="s">for files in the </span><span class="se">\"</span><span class="s">GPL</span><span class="se">\"</span><span class="s"> directory; for others, only LICENSE file applies"</span><span class="p">);</span>
</pre></div>
<p>The string comparison code used by the kernel at the time tried to determine whether the module was GPLed stopped when it reached a null character (<code>\0</code>), so it was fooled into thinking that the module was declaring its license to be just "GPL".<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="FreeBSD">FreeBSD</h3></div>
<p>Kernel modules for <a href="FreeBSD" title="FreeBSD">FreeBSD</a> are stored within <code>/boot/kernel/</code> for modules distributed with the <a href="Operating_system" title="Operating system">operating system</a>, or usually <code>/boot/modules/</code> for modules installed from <a href="FreeBSD_ports" class="mw-redirect" title="FreeBSD ports">FreeBSD ports</a> or <a href="FreeBSD_ports" class="mw-redirect" title="FreeBSD ports">FreeBSD packages</a>, or for proprietary or otherwise binary-only modules. FreeBSD kernel modules usually have the extension <code>.ko</code>. Once the machine has booted, they may be loaded with the <code>kldload</code> command, unloaded with <code>kldunload</code>, and listed with <code>kldstat</code>. Modules can also be loaded from the loader before the kernel starts, either automatically (through <code>/boot/loader.conf</code>) or by hand.
</p>
<div class="mw-heading mw-heading3"><h3 id="macOS">macOS</h3></div>
<p>Some loadable kernel modules in macOS can be loaded automatically. Loadable kernel modules can also be loaded by the <code>kextload</code> command. They can be listed by the <code>kextstat</code> command. Loadable kernel modules are located in <a href="Bundle_(macOS)" title="Bundle (macOS)">bundles</a> with the extension <code>.kext</code>. Modules supplied with the operating system are stored in the <code>/System/Library/Extensions</code> directory; modules supplied by third parties are in various other directories.
</p>
<div class="mw-heading mw-heading3"><h3 id="NetWare">NetWare</h3></div>
<p>A NetWare kernel module is referred to as a <a href="NetWare_Loadable_Module" title="NetWare Loadable Module">NetWare Loadable Module</a> (NLM). NLMs are inserted into the NetWare kernel by means of the LOAD command, and removed by means of the UNLOAD command; the <code>modules</code> command lists currently loaded kernel modules. NLMs may reside in any valid search path assigned on the NetWare server, and they have <code>.NLM</code> as the file name extension.
</p>
<div class="mw-heading mw-heading3"><h3 id="VxWorks">VxWorks</h3></div>
<p>A downloadable kernel module (DKM) type project can be created to generate a ".out" file which can then be loaded to kernel space using "ld" command. This downloadable kernel module can be unloaded using "unld" command.
</p>
<div class="mw-heading mw-heading3"><h3 id="Solaris">Solaris</h3></div>
<p>Solaris has a configurable kernel module load path, which defaults to <code>/platform/platform-name/kernel /kernel /usr/kernel</code>. Most kernel modules live in subdirectories under <code>/kernel</code>; those not considered necessary to boot the system to the point that init can start are often (but not always) found in <code>/usr/kernel</code>. When running a DEBUG kernel build the system actively attempts to unload modules.
</p>
<div class="mw-heading mw-heading2"><h2 id="Binary_compatibility">Binary compatibility</h2></div>
<p>Linux does not provide a stable <a href="API" title="API">API</a> or <a href="Application_binary_interface" title="Application binary interface">ABI</a> for kernel modules. This means that there are differences in internal structure and function between different kernel versions, which can cause compatibility problems. In an attempt to combat those problems, symbol versioning data is placed within the <code>.modinfo</code> section of loadable <a href="Executable_and_Linkable_Format" title="Executable and Linkable Format">ELF</a> modules. This versioning information can be compared with that of the running kernel before loading a module; if the versions are incompatible, the module will not be loaded.
</p><p>Other operating systems, such as <a href="Solaris_(operating_system)" class="mw-redirect" title="Solaris (operating system)">Solaris</a>, <a href="FreeBSD" title="FreeBSD">FreeBSD</a>, <a href="MacOS" title="MacOS">macOS</a>, and <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a> keep the kernel <a href="API" title="API">API</a> and <a href="Application_binary_interface" title="Application binary interface">ABI</a> relatively stable, thus avoiding this problem. For example, <a href="FreeBSD" title="FreeBSD">FreeBSD</a> kernel modules compiled against kernel version 6.0 will work without recompilation on any other FreeBSD 6.x version, e.g. 6.4. However, they are not compatible with other major versions and must be recompiled for use with FreeBSD 7.x, as API and ABI compatibility is maintained only within a branch.
</p>
<div class="mw-heading mw-heading2"><h2 id="Security">Security</h2></div>
<p>While loadable kernel modules are a convenient method of modifying the running kernel, this can be abused by attackers on a compromised system to prevent detection of their <a href="Process_(computing)" title="Process (computing)">processes</a> or <a href="Computer_file" title="Computer file">files</a>, allowing them to maintain control over the system. Many <a href="Rootkit" title="Rootkit">rootkits</a> make use of LKMs in this way. Note that, on most operating systems, modules do not help <a href="Privilege_elevation" class="mw-redirect" title="Privilege elevation">privilege elevation</a> in any way, as elevated privilege is required to load a LKM; they merely make it easier for the attacker to hide the break-in.<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Linux_2">Linux</h3></div>
<p>Linux allows disabling module loading via <a href="Sysctl" title="Sysctl">sysctl</a> option <code>/proc/sys/kernel/modules_disabled</code>.<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> An <a href="Initial_ramdisk" title="Initial ramdisk">initramfs</a> system may load specific modules needed for a machine at boot and then disable module loading. This makes the security very similar to a monolithic kernel. If an attacker can change the initramfs, they can change the kernel binary.
</p>
<div class="mw-heading mw-heading3"><h3 id="macOS_2">macOS</h3></div>
<p>In <a href="OS_X_Yosemite" title="OS X Yosemite">OS X Yosemite</a> and later releases, a kernel extension has to be <a href="Code_signing" title="Code signing">code-signed</a> with a developer certificate that holds a particular "entitlement." Such a developer certificate is only provided by Apple on request and not automatically given to <a href="Apple_Developer" title="Apple Developer">Apple Developer</a> members. This feature, called "kext signing", is enabled by default and it instructs the kernel to stop booting if unsigned kernel extensions are present.<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup> In <a href="OS_X_El_Capitan" title="OS X El Capitan"><span class="nowrap">OS X</span> El Capitan</a> and later releases, it is part of <a href="System_Integrity_Protection" title="System Integrity Protection">System Integrity Protection</a>.
</p><p>In older versions of macOS, or if kext signing is disabled, a loadable kernel module in a kernel extension bundle can be loaded by non-root users if the OSBundleAllowUserLoad property is set to True in the bundle's property list.<sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup> However, if any of the files in the bundle, including the executable code file, are not owned by root and group wheel, or are writable by the group or "other", the attempt to load the kernel loadable module will fail.<sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Solaris_2">Solaris</h3></div>
<p>Kernel modules can optionally have a cryptographic signature ELF section which is verified on load depending on the Verified Boot policy settings. The kernel can enforce that modules are cryptographically signed by a set of trusted certificates; the list of trusted certificates is held outside of the OS in the ILOM on some SPARC based platforms. Userspace initiated kernel module loading is only possible from the Trusted Path when the system is running with the Immutable Global Zone feature enabled.
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Dynamic_link_library" class="mw-redirect" title="Dynamic link library">Dynamic link library</a> – Sharable executable library in Windows and OS/2<span style="display:none" class="category-annotation-with-redirected-description">Pages displaying short descriptions of redirect targets</span></li>
<li><a href="NetWare_Loadable_Module" title="NetWare Loadable Module">NetWare Loadable Module</a> – Novell-compatible computer-readable software</li>
<li><a href="Shared_library" title="Shared library">Shared library</a> – Software library designed for use in multiple programs</li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */
.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}
/* end https://en.wikipedia.org/ */
</style><div class="reflist reflist-columns references-column-width" style="column-width: 25em;">
<ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */
.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}
/* end https://en.wikipedia.org/ */
</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://developer.apple.com/support/kernel-extensions/">"Deprecated Kernel Extensions and System Extension Alternatives"</a>. Apple Inc<span class="reference-accessdate">. Retrieved <span class="nowrap">13 March</span> 2021</span>.</cite></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/KEXTConceptIntro/introduction.html">"Kernel Extension Programming Topics: Introduction"</a>. <a href="Apple_Inc." title="Apple Inc.">Apple Inc.</a> September 1, 2010. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20130504142911/http://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/KEXTConceptIntro/introduction.html">Archived</a> from the original on May 4, 2013<span class="reference-accessdate">. Retrieved <span class="nowrap">May 5,</span> 2013</span>.</cite></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://support.hpe.com/hpesc/public/docDisplay?docId=emr_na-c01943990">"Managing and Developing DynamicallyLoadable Kernel Modules"</a>. <a href="Hewlett-Packard" title="Hewlett-Packard">Hewlett-Packard</a>. June 7, 2001.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://msdn.microsoft.com/en-us/library/windows/hardware/ff557272(v=vs.85).aspx">"What Determines When a Driver Is Loaded"</a>. <i><a href="Microsoft_Developer_Network" title="Microsoft Developer Network">Microsoft Developer Network</a></i>. <a href="Microsoft" title="Microsoft">Microsoft</a>. November 21, 2012. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20130306121408/http://msdn.microsoft.com/en-us/library/windows/hardware/ff557272%28v%3Dvs.85%29.aspx">Archived</a> from the original on March 6, 2013<span class="reference-accessdate">. Retrieved <span class="nowrap">May 5,</span> 2013</span>.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://tldp.org/LDP/lkmpg/2.6/html/x181.html">"The Linux Kernel Module Programming Guide, section 2.2 "Compiling Kernel Modules""</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2020-10-05</span></span>.</cite></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text"><cite id="CITEREFLinus_Torvalds2011" class="citation web cs1">Linus Torvalds; et al. (2011-06-21). <a rel="nofollow" class="external text" href="http://repo.or.cz/w/linux-2.6.git/blob/HEAD:/Documentation/oops-tracing.txt#l222">"Documentation/oops-tracing.txt"</a>. kernel.org. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20111002110747/http://repo.or.cz/w/linux-2.6.git/blob/HEAD%3A/Documentation/oops-tracing.txt#l222">Archived</a> from the original on 2011-10-02<span class="reference-accessdate">. Retrieved <span class="nowrap">2011-10-03</span></span>.</cite></span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.kernel.org/doc/html/latest/admin-guide/tainted-kernels.html">"Tainted kernels"</a>. <i>The Linux kernel user’s and administrator’s guide</i>.</cite></span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><cite id="CITEREFJonathan_Corbet2006" class="citation web cs1">Jonathan Corbet (2006-03-24). <a rel="nofollow" class="external text" href="https://lwn.net/Articles/184879/">"Tainting from user space"</a>. <a href="LWN.net" title="LWN.net">LWN.net</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20111116215244/http://lwn.net/Articles/184879/">Archived</a> from the original on 2011-11-16<span class="reference-accessdate">. Retrieved <span class="nowrap">2011-10-03</span></span>.</cite></span>
</li>
<li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.novell.com/support/viewContent.do?externalId=3582750&sliceId=1">"Novell support documentation: Tainted kernel"</a>. 2007-07-26<span class="reference-accessdate">. Retrieved <span class="nowrap">2011-10-03</span></span>.</cite></span>
</li>
<li id="cite_note-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-10">^</a></b></span> <span class="reference-text"><cite id="CITEREFJonathan_Corbet2004" class="citation web cs1">Jonathan Corbet (April 27, 2004). <a rel="nofollow" class="external text" href="https://lwn.net/Articles/82305/">"Being honest with MODULE_LICENSE"</a>. LWN.net. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20121102095811/http://lwn.net/Articles/82305/">Archived</a> from the original on November 2, 2012<span class="reference-accessdate">. Retrieved <span class="nowrap">October 30,</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.ouah.org/reiterlkm.htm">Exploiting Loadable Kernel Modules </a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20120204165532/http://www.ouah.org/reiterlkm.htm">Archived</a> 2012-02-04 at the <a href="Wayback_Machine" title="Wayback Machine">Wayback Machine</a></span>
</li>
<li id="cite_note-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-12">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://archive.today/20130415070311/http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=Documentation/sysctl/kernel.txt;hb=HEAD">"Sysctl/kernel.txt"</a>. Archived from <a rel="nofollow" class="external text" href="https://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=Documentation/sysctl/kernel.txt;hb=HEAD">the original</a> on April 15, 2013<span class="reference-accessdate">. Retrieved <span class="nowrap">January 4,</span> 2013</span>.</cite></span>
</li>
<li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text"><cite id="CITEREFKees_Cook2012" class="citation web cs1">Kees Cook (2012-11-28). <a rel="nofollow" class="external text" href="https://outflux.net/blog/archives/2012/11/28/clean-module-disabling/">"Clean module disabling"</a>. outflux.net<span class="reference-accessdate">. Retrieved <span class="nowrap">2020-10-05</span></span>.</cite></span>
</li>
<li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://developer.apple.com/library/content/documentation/Security/Conceptual/System_Integrity_Protection_Guide/KernelExtensions/KernelExtensions.html">"Kernel Extensions"</a>. <i>Mac Developer Library</i>. Apple. September 16, 2015. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20160817085001/https://developer.apple.com/library/mac/documentation/Security/Conceptual/System_Integrity_Protection_Guide/KernelExtensions/KernelExtensions.html">Archived</a> from the original on August 17, 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">September 29,</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/Articles/infoplist_keys.html">"Info.plist Properties for Kernel Extensions"</a>. <a href="Apple_Inc." title="Apple Inc.">Apple Inc.</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20120926232217/http://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/Articles/infoplist_keys.html">Archived</a> from the original on September 26, 2012<span class="reference-accessdate">. Retrieved <span class="nowrap">September 27,</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><span class="neverexpand"><code><a rel="nofollow" class="external text" href="https://keith.github.io/xcode-man-pages/kextload.8.html">kextload(8)</a></code></span> – <a href="Darwin_(operating_system)" title="Darwin (operating system)">Darwin</a> and <a href="MacOS" title="MacOS">macOS</a> System Manager's <a href="Man_page" title="Man page">Manual</a></span>
</li>
</ol></div>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}
/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}
/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Operating_systems310" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div id="Operating_systems310" style="font-size:114%;margin:0 4em"><a href="Operating_system" title="Operating system">Operating systems</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">General</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Comparison_of_operating_systems" title="Comparison of operating systems">Comparison</a></li>
<li><a href="Forensic_software_engineering" title="Forensic software engineering">Forensic engineering</a></li>
<li><a href="History_of_operating_systems" title="History of operating systems">History</a></li>
<li><a href="List_of_operating_systems" title="List of operating systems">List</a></li>
<li><a href="Timeline_of_operating_systems" title="Timeline of operating systems">Timeline</a></li>
<li><a href="Usage_share_of_operating_systems" title="Usage share of operating systems">Usage share</a></li>
<li><a href="Comparison_of_user_features_of_operating_systems" title="Comparison of user features of operating systems">User features comparison</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Variants</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Disk_operating_system" title="Disk operating system">Disk operating system</a></li>
<li><a href="Distributed_operating_system" title="Distributed operating system">Distributed operating system</a></li>
<li><a href="Embedded_operating_system" title="Embedded operating system">Embedded operating system</a></li>
<li><a href="Hobbyist_operating_system" title="Hobbyist operating system">Hobbyist operating system</a></li>
<li><a href="Just_enough_operating_system" title="Just enough operating system">Just enough operating system</a></li>
<li><a href="Mobile_operating_system" title="Mobile operating system">Mobile operating system</a></li>
<li><a href="Network_operating_system" title="Network operating system">Network operating system</a></li>
<li><a href="Object-oriented_operating_system" title="Object-oriented operating system">Object-oriented operating system</a></li>
<li><a href="Real-time_operating_system" title="Real-time operating system">Real-time operating system</a></li>
<li><a href="Supercomputer_operating_system" title="Supercomputer operating system">Supercomputer operating system</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Kernel_(operating_system)" title="Kernel (operating system)">Kernel</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:6em"><a href="Computer_architecture" title="Computer architecture">Architectures</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Exokernel" title="Exokernel">Exokernel</a></li>
<li><a href="Hybrid_kernel" title="Hybrid kernel">Hybrid</a></li>
<li><a href="Microkernel" title="Microkernel">Microkernel</a></li>
<li><a href="Monolithic_kernel" title="Monolithic kernel">Monolithic</a></li>
<li><a href="Multikernel" title="Multikernel">Multikernel</a></li>
<li><a href="Vkernel" title="Vkernel">vkernel</a></li>
<li><a href="Rump_kernel" title="Rump kernel">Rump kernel</a></li>
<li><a href="Unikernel" title="Unikernel">Unikernel</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:6em">Components</th><td class="navbox-list-with-group navbox-list navbox-even" style="padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Device_driver" title="Device driver">Device driver</a></li>
<li><a href="User_space_and_kernel_space" title="User space and kernel space">User space and kernel space</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Process_management_(computing)" title="Process management (computing)">Process management</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:6em">Concepts</th><td class="navbox-list-with-group navbox-list navbox-odd" style="padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Computer_multitasking" title="Computer multitasking">Computer multitasking</a> (<a href="Cooperative_multitasking" title="Cooperative multitasking">Cooperative</a>, <a href="Preemption_(computing)" title="Preemption (computing)">Preemptive</a>)</li>
<li><a href="Context_switch" title="Context switch">Context switch</a></li>
<li><a href="Interrupt" title="Interrupt">Interrupt</a></li>
<li><a href="Inter-process_communication" title="Inter-process communication">IPC</a></li>
<li><a href="Process_(computing)" title="Process (computing)">Process</a></li>
<li><a href="Process_control_block" title="Process control block">Process control block</a></li>
<li><a href="Real-time_operating_system" title="Real-time operating system">Real-time</a></li>
<li><a href="Thread_(computing)" title="Thread (computing)">Thread</a></li>
<li><a href="Time-sharing" title="Time-sharing">Time-sharing</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:6em"><a href="Scheduling_(computing)" title="Scheduling (computing)">Scheduling<br>algorithms</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Fixed-priority_pre-emptive_scheduling" title="Fixed-priority pre-emptive scheduling">Fixed-priority preemptive</a></li>
<li><a href="Multilevel_feedback_queue" title="Multilevel feedback queue">Multilevel feedback queue</a></li>
<li><a href="Round-robin_scheduling" title="Round-robin scheduling">Round-robin</a></li>
<li><a href="Shortest_job_next" title="Shortest job next">Shortest job next</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Memory_management_(operating_systems)" title="Memory management (operating systems)">Memory management</a>,<br><a href="System_resource" title="System resource">resource</a> protection</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Bus_error" title="Bus error">Bus error</a></li>
<li><a href="General_protection_fault" title="General protection fault">General protection fault</a></li>
<li><a href="Memory_paging" title="Memory paging">Memory paging</a></li>
<li><a href="Memory_protection" title="Memory protection">Memory protection</a></li>
<li><a href="Protection_ring" title="Protection ring">Protection ring</a></li>
<li><a href="Segmentation_fault" title="Segmentation fault">Segmentation fault</a></li>
<li><a href="Virtual_memory" title="Virtual memory">Virtual memory</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Non-volatile_memory" title="Non-volatile memory">Storage</a> access,<br><a href="File_system" title="File system">file systems</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Booting#BOOT-LOADER" title="Booting">Boot loader</a></li>
<li><a href="Defragmentation" title="Defragmentation">Defragmentation</a></li>
<li><a href="Device_file" title="Device file">Device file</a></li>
<li><a href="File_attribute" title="File attribute">File attribute</a></li>
<li><a href="Inode" title="Inode">Inode</a></li>
<li><a href="Journaling_file_system" title="Journaling file system">Journal</a></li>
<li><a href="Disk_partitioning" title="Disk partitioning">Partition</a></li>
<li><a href="Virtual_file_system" title="Virtual file system">Virtual file system</a></li>
<li><a href="Virtual_tape_library" title="Virtual tape library">Virtual tape library</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Supporting concepts</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="API" title="API">API</a></li>
<li><a href="Computer_network" title="Computer network">Computer network</a></li>
<li><a href="Hardware_abstraction" title="Hardware abstraction">HAL</a></li>
<li><a href="Live_CD" title="Live CD">Live CD</a></li>
<li><a href="Live_USB" title="Live USB">Live USB</a></li>
<li><a href="Shell_(computing)" title="Shell (computing)">Shell</a>
<ul><li><a href="Command-line_interface" title="Command-line interface">CLI</a></li>
<li><a href="User_interface" title="User interface">User interface</a></li></ul></li>
<li><a href="Preboot_Execution_Environment" title="Preboot Execution Environment">PXE</a></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Linux_kernel514" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Linux_kernel514" style="font-size:114%;margin:0 4em"><a href="Linux_kernel" title="Linux kernel">Linux kernel</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Organization</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Kernel19" scope="row" class="navbox-group" style="width:1%">Kernel</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Linux_Foundation" title="Linux Foundation">Linux Foundation</a></li>
<li><a href="Linux_Mark_Institute" title="Linux Mark Institute">Linux Mark Institute</a></li>
<li><a href="Linus's_law" title="Linus's law">Linus's law</a></li>
<li><a href="Tanenbaum%E2%80%93Torvalds_debate" title="Tanenbaum–Torvalds debate">Tanenbaum–Torvalds debate</a></li>
<li><a href="Tux_(mascot)" title="Tux (mascot)">Tux</a></li>
<li><a href="SCO%E2%80%93Linux_disputes" title="SCO–Linux disputes">SCO disputes</a></li>
<li><a href="Linaro" title="Linaro">Linaro</a></li>
<li><a href="GNU_General_Public_License#Version_2" title="GNU General Public License">GNU GPL v2</a></li>
<li><a href="Menuconfig" title="Menuconfig">menuconfig</a></li>
<li><a href="List_of_Linux-supported_computer_architectures" title="List of Linux-supported computer architectures">Supported computer architectures</a></li>
<li><a href="Linux_kernel_version_history" title="Linux kernel version history">Version history</a></li>
<li><a href="Criticism_of_Linux" title="Criticism of Linux">Criticism</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Support</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>Developers
<ul><li><i><a href="The_Linux_Programming_Interface" title="The Linux Programming Interface">The Linux Programming Interface</a></i></li>
<li><a href="Kernel.org" title="Kernel.org">kernel.org</a></li>
<li><a href="Linux_kernel_mailing_list" title="Linux kernel mailing list">LKML</a></li>
<li><a href="Linux_conference" class="mw-redirect" title="Linux conference">Linux conferences</a></li></ul></li>
<li>Users
<ul><li><a href="Linux_user_group" title="Linux user group">Linux User Group (LUG)</a></li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">People</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Werner_Almesberger" title="Werner Almesberger">Werner Almesberger</a></li>
<li><a href="H._Peter_Anvin" title="H. Peter Anvin">H. Peter Anvin</a></li>
<li><a href="Jens_Axboe" title="Jens Axboe">Jens Axboe</a></li>
<li><a href="Moshe_Bar_(investor)" title="Moshe Bar (investor)">Moshe Bar</a></li>
<li><a href="Suparna_Bhattacharya" title="Suparna Bhattacharya">Suparna Bhattacharya</a></li>
<li><a href="Andries_Brouwer" title="Andries Brouwer">Andries Brouwer</a></li>
<li><a href="R%C3%A9my_Card" title="Rémy Card">Rémy Card</a></li>
<li><a href="Alan_Cox_(computer_programmer)" title="Alan Cox (computer programmer)">Alan Cox</a></li>
<li><a href="Matthew_Garrett" title="Matthew Garrett">Matthew Garrett</a></li>
<li><a href="Avi_Kivity" title="Avi Kivity">Avi Kivity</a></li>
<li><a href="Con_Kolivas" title="Con Kolivas">Con Kolivas</a></li>
<li><a href="Greg_Kroah-Hartman" title="Greg Kroah-Hartman">Greg Kroah-Hartman</a></li>
<li><a href="Benson_Leung" title="Benson Leung">Benson Leung</a></li>
<li><a href="Robert_Love" title="Robert Love">Robert Love</a></li>
<li><a href="David_S._Miller" title="David S. Miller">David S. Miller</a></li>
<li><a href="Ingo_Moln%C3%A1r" title="Ingo Molnár">Ingo Molnár</a></li>
<li><a href="Andrew_Morton_(computer_programmer)" title="Andrew Morton (computer programmer)">Andrew Morton</a></li>
<li><a href="Hans_Reiser" title="Hans Reiser">Hans Reiser</a></li>
<li><a href="Rusty_Russell" title="Rusty Russell">Rusty Russell</a></li>
<li><a href="Shuah_Khan" title="Shuah Khan">Shuah Khan</a></li>
<li><a href="Linus_Torvalds" title="Linus Torvalds">Linus Torvalds</a></li>
<li><a href="Theodore_Ts'o" title="Theodore Ts'o">Theodore Ts'o</a></li>
<li><a href="Stephen_Tweedie" title="Stephen Tweedie">Stephen Tweedie</a></li>
<li><a href="Harald_Welte" title="Harald Welte">Harald Welte</a></li>
<li><a href="Chris_Wright_(programmer)" title="Chris Wright (programmer)">Chris Wright</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Technical</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Debugging</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="CRIU" title="CRIU">CRIU</a></li>
<li><a href="Ftrace" title="Ftrace">ftrace</a></li>
<li><a href="Kdump_(Linux)" title="Kdump (Linux)">kdump</a></li>
<li><a href="Linux_kernel_oops" title="Linux kernel oops">Linux kernel oops</a></li>
<li><a href="SystemTap" title="SystemTap">SystemTap</a></li>
<li><a href="Berkeley_Packet_Filter" title="Berkeley Packet Filter">BPF</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Booting_process_of_Linux" title="Booting process of Linux">Startup</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Vmlinux" title="Vmlinux">vmlinux</a></li>
<li><a href="System.map" title="System.map">System.map</a></li>
<li><a href="Dracut_(software)" title="Dracut (software)">dracut</a></li>
<li><a href="Initrd" class="mw-redirect" title="Initrd">initrd</a></li>
<li><a href="Initramfs" class="mw-redirect" title="Initramfs">initramfs</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_kernel_interfaces" title="Linux kernel interfaces">ABIs</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Linux_Standard_Base" title="Linux Standard Base">Linux Standard Base</a></li>
<li><a href="X32_ABI" title="X32 ABI">x32 ABI</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_kernel_interfaces" title="Linux kernel interfaces">APIs</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Kernel</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_kernel_interfaces#SCI" title="Linux kernel interfaces">System Call<br>Interface</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="POSIX" title="POSIX">POSIX</a>
<ul><li><a href="Ioctl" title="Ioctl">ioctl</a></li>
<li><a href="Select_(Unix)" title="Select (Unix)">select</a></li>
<li><a href="Open_(system_call)" title="Open (system call)">open</a></li>
<li><a href="Read_(system_call)" title="Read (system call)">read</a></li>
<li><a href="Close_(system_call)" title="Close (system call)">close</a></li>
<li><a href="Sync_(Unix)" title="Sync (Unix)">sync</a></li>
<li>…</li></ul></li>
<li><a href="Linux_kernel_interfaces#Additions_to_POSIX" title="Linux kernel interfaces">Linux-only</a>
<ul><li><a href="Futex" title="Futex">futex</a></li>
<li><a href="Epoll" title="Epoll">epoll</a></li>
<li><a href="Splice_(system_call)" title="Splice (system call)">splice</a></li>
<li><a href="Dnotify" title="Dnotify">dnotify</a></li>
<li><a href="Inotify" title="Inotify">inotify</a></li>
<li><a href="Readahead" title="Readahead">readahead</a></li>
<li>…</li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_kernel_interfaces#In–kernel_APIs" title="Linux kernel interfaces">In-kernel</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Advanced_Linux_Sound_Architecture" title="Advanced Linux Sound Architecture">ALSA</a></li>
<li><a href="Crypto_API_(Linux)" title="Crypto API (Linux)">Crypto API</a></li>
<li><a href="Io_uring" title="Io uring">io uring</a></li>
<li><a href="Direct_Rendering_Manager" title="Direct Rendering Manager">DRM</a></li>
<li><a href="Kernfs_(Linux)" title="Kernfs (Linux)">kernfs</a></li>
<li><a href="Memory_barrier" title="Memory barrier">Memory barrier</a></li>
<li><a href="New_API" title="New API">New API</a></li>
<li><a href="Read-copy-update" title="Read-copy-update">RCU</a></li>
<li><a href="Video4Linux" title="Video4Linux">Video4Linux</a></li>
<li><a href="IIO_Framework" title="IIO Framework">IIO</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="User_space_and_kernel_space" title="User space and kernel space">Userspace</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Daemon_(computing)" title="Daemon (computing)">Daemons</a>,<br><a href="Virtual_file_system" title="Virtual file system">File systems</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>bpffs</li>
<li><a href="Configfs" title="Configfs">configfs</a></li>
<li><a href="Devfs" class="mw-redirect" title="Devfs">devfs</a></li>
<li><a href="Devpts" title="Devpts">devpts</a></li>
<li><a href="Debugfs" title="Debugfs">debugfs</a></li>
<li><a href="Filesystem_in_Userspace" title="Filesystem in Userspace">FUSE</a></li>
<li>hugetlbfs</li>
<li>pipefs</li>
<li><a href="Procfs" title="Procfs">procfs</a></li>
<li>securityfs</li>
<li>sockfs</li>
<li><a href="Sysfs" title="Sysfs">sysfs</a></li>
<li><a href="Tmpfs" title="Tmpfs">tmpfs</a></li>
<li><a href="Systemd" title="Systemd">systemd</a>
<ul><li><a href="Udev" title="Udev">udev</a></li></ul></li>
<li><a href="Kmscon" title="Kmscon">Kmscon</a></li>
<li><a href="Binfmt_misc" title="Binfmt misc">binfmt_misc</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Wrapper_library" title="Wrapper library">Wrapper<br>libraries</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="C_standard_library" title="C standard library">C standard library</a>
<ul><li><a href="Glibc" title="Glibc">glibc</a></li>
<li><a href="UClibc" title="UClibc">uClibc</a></li>
<li><a href="Bionic_(software)" title="Bionic (software)">Bionic</a>
<ul><li><a href="Libhybris" title="Libhybris">libhybris</a></li></ul></li>
<li><a href="Dietlibc" title="Dietlibc">dietlibc</a></li>
<li><a href="Embedded_GLIBC" class="mw-redirect" title="Embedded GLIBC">EGLIBC</a></li>
<li><a href="Klibc" title="Klibc">klibc</a></li>
<li><a href="Musl" title="Musl">musl</a></li>
<li><a href="Newlib" title="Newlib">Newlib</a></li></ul></li>
<li><a href="Cgroups" title="Cgroups">libcgroup</a></li>
<li><a href="Direct_Rendering_Manager" title="Direct Rendering Manager">libdrm</a></li>
<li><a href="Advanced_Linux_Sound_Architecture" title="Advanced Linux Sound Architecture">libalsa</a></li>
<li><a href="Evdev" title="Evdev">libevdev</a></li>
<li><a href="Libusb" title="Libusb">libusb</a></li>
<li><a href="Io_uring" title="Io uring">liburing</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Components</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul>
<li><a href="BlueZ" class="mw-redirect" title="BlueZ">BlueZ</a></li>
<li><a href="Cgroups" title="Cgroups">cgroups</a></li>
<li><a href="Linux_console" title="Linux console">Console</a></li>
<li><a href="Bcache" title="Bcache">bcache</a></li>
<li><a href="Device_mapper" title="Device mapper">Device mapper</a></li>
<li><a href="Dm-cache" title="Dm-cache">dm-cache</a></li>
<li><a href="Dm-crypt" title="Dm-crypt">dm-crypt</a></li>
<li><a href="Direct_Rendering_Manager" title="Direct Rendering Manager">DRM</a></li>
<li><a href="EDAC_(Linux)" class="mw-redirect" title="EDAC (Linux)">EDAC</a></li>
<li><a href="Evdev" title="Evdev">evdev</a></li>
<li><a href="Kernel_same-page_merging" title="Kernel same-page merging">Kernel same-page merging</a> (KSM)</li>
<li><a href="LIO_(SCSI_target)" title="LIO (SCSI target)">LIO</a></li>
<li><a href="Linux_framebuffer" title="Linux framebuffer">Framebuffer</a></li>
<li><a href="Logical_Volume_Manager_(Linux)" title="Logical Volume Manager (Linux)">LVM</a></li>
<li><a href="KMS_driver" class="mw-redirect" title="KMS driver">KMS driver</a></li>
<li><a href="Netfilter" title="Netfilter">Netfilter</a></li>
<li><a href="Netlink" title="Netlink">Netlink</a></li>
<li><a href="Nftables" title="Nftables">nftables</a></li>
<li><a href="Network_scheduler" title="Network scheduler">Network scheduler</a></li>
<li><a href="Perf_(Linux)" title="Perf (Linux)">perf</a></li>
<li><a href="SLUB_(software)" title="SLUB (software)">SLUB</a></li>
<li><a href="Zram" title="Zram">zram</a></li>
<li><a href="Zswap" title="Zswap">zswap</a></li></ul>
<ul><li><a href="Scheduling_(computing)#Linux" title="Scheduling (computing)">Process and I/O schedulers</a>:</li>
<li><a href="Brain_Fuck_Scheduler" title="Brain Fuck Scheduler">Brain Fuck Scheduler</a></li>
<li><a href="Completely_Fair_Scheduler" title="Completely Fair Scheduler">Completely Fair Scheduler</a> (CFS)</li>
<li><a href="Earliest_eligible_virtual_deadline_first_scheduling" title="Earliest eligible virtual deadline first scheduling">Earliest eligible virtual deadline first</a> (EEVDF)</li>
<li><a href="Noop_scheduler" title="Noop scheduler">Noop scheduler</a></li>
<li><a href="O(n)_scheduler" title="O(n) scheduler">O(n) scheduler</a></li>
<li><a href="O(1)_scheduler" title="O(1) scheduler">O(1) scheduler</a></li>
<li><a href="SCHED_DEADLINE" title="SCHED DEADLINE">SCHED_DEADLINE</a></li>
<li><a href="SCHED_FIFO" class="mw-redirect" title="SCHED FIFO">SCHED_FIFO</a></li>
<li><a href="SCHED_RR" class="mw-redirect" title="SCHED RR">SCHED_RR</a></li></ul>
<ul><li><a href="Linux_Security_Modules" title="Linux Security Modules">Security Modules</a>: <a href="AppArmor" title="AppArmor">AppArmor</a></li>
<li><a href="Exec_Shield" title="Exec Shield">Exec Shield</a></li>
<li><a href="Seccomp" title="Seccomp">seccomp</a></li>
<li><a href="Security-Enhanced_Linux" title="Security-Enhanced Linux">SELinux</a></li>
<li><a href="Smack_(software)" title="Smack (software)">Smack</a></li>
<li><a href="Tomoyo_Linux" title="Tomoyo Linux">Tomoyo Linux</a></li>
<li><a href="Linux_PAM" title="Linux PAM">Linux PAM</a></li></ul>
<ul><li><a href="Device_driver" title="Device driver">Device drivers</a>
<ul><li><a href="Comparison_of_open-source_wireless_drivers" title="Comparison of open-source wireless drivers">802.11</a></li>
<li><a href="Free_and_open-source_graphics_device_driver" title="Free and open-source graphics device driver">graphics</a></li></ul></li>
<li><a href="Raw_device" title="Raw device">Raw device</a></li></ul>
<ul><li><a href="Initramfs" class="mw-redirect" title="Initramfs">initramfs</a></li>
<li><a href="KernelCare" title="KernelCare">KernelCare</a></li>
<li><a href="Kexec" title="Kexec">kexec</a></li>
<li><a href="KGraft" title="KGraft">kGraft</a></li>
<li><a href="Kpatch" title="Kpatch">kpatch</a></li>
<li><a href="Ksplice" title="Ksplice">Ksplice</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Variants</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Mainline_Linux" class="mw-redirect" title="Mainline Linux">Mainline</a>
<ul><li><a href="Linux_kernel" title="Linux kernel">Linux kernel</a></li>
<li><a href="Linux-libre" title="Linux-libre">Linux-libre</a></li></ul></li>
<li><a href="High-performance_computing" title="High-performance computing">High-performance computing</a>
<ul><li><a href="INK_(operating_system)" title="INK (operating system)">INK</a></li>
<li><a href="Compute_Node_Linux" title="Compute Node Linux">Compute Node Linux</a></li>
<li><a href="Slurm_Workload_Manager" title="Slurm Workload Manager">SLURM</a></li></ul></li>
<li><a href="Real-time_computing" title="Real-time computing">Real-time computing</a>
<ul><li><a href="RTLinux" title="RTLinux">RTLinux</a></li>
<li><a href="RTAI" title="RTAI">RTAI</a></li>
<li><a href="Xenomai" title="Xenomai">Xenomai</a></li>
<li><a href="PREEMPT_RT" title="PREEMPT RT">PREEMPT_RT</a></li></ul></li>
<li><a href="Memory_management_unit" title="Memory management unit">MMU</a>-less
<ul><li><a href="%CE%9CClinux" title="ΜClinux">μClinux</a></li>
<li><a href="PSXLinux" title="PSXLinux">PSXLinux</a></li></ul></li></ul>
</div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Virtualization18" scope="row" class="navbox-group" style="width:1%"><a href="Virtualization" title="Virtualization">Virtualization</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Hypervisor" title="Hypervisor">Hypervisor</a>
<ul><li><a href="Kernel-based_Virtual_Machine" title="Kernel-based Virtual Machine">KVM</a></li>
<li><a href="Xen" title="Xen">Xen</a></li></ul></li>
<li><a href="OS-level_virtualization" title="OS-level virtualization">OS-level virtualization</a>
<ul><li><a href="Linux-VServer" title="Linux-VServer">Linux-VServer</a></li>
<li><a href="Lguest" title="Lguest">Lguest</a></li>
<li><a href="LXC" title="LXC">LXC</a></li>
<li><a href="OpenVZ" title="OpenVZ">OpenVZ</a></li></ul></li>
<li>Other
<ul><li><a href="L4Linux" title="L4Linux">L4Linux</a></li>
<li><a href="User-mode_Linux" title="User-mode Linux">User-mode Linux</a></li>
<li><a href="MkLinux" title="MkLinux">MkLinux</a></li>
<li><a href="Cooperative_Linux" title="Cooperative Linux">coLinux</a></li></ul></li></ul>
</div></td></tr></tbody></table><div>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Linux_adoption" title="Linux adoption">Adoption</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Rangeof_use48" scope="row" class="navbox-group" style="width:1%"><a href="Linux_range_of_use" title="Linux range of use">Range<br>of use</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Linux_desktop_environments" class="mw-redirect" title="Linux desktop environments">Desktop</a></li>
<li><a href="Linux_on_embedded_systems" title="Linux on embedded systems">Embedded</a></li>
<li><a href="Video_games_and_Linux" title="Video games and Linux">Gaming</a></li>
<li>Thin client:
<ul><li><a href="Linux_Terminal_Server_Project" title="Linux Terminal Server Project">LTSP</a></li></ul></li>
<li>Server:
<ul><li><a href="LAMP_(software_bundle)" title="LAMP (software bundle)">LAMP</a></li>
<li><a href="LYME_(software_bundle)" title="LYME (software bundle)">LYME-LYCE</a></li></ul></li>
<li><a href="Linux-powered_device" title="Linux-powered device">Devices</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Adopters</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="List_of_Linux_adopters" title="List of Linux adopters">List of Linux adopters</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div>
<ul><li><b><span class="nowrap"><span class="noviewer" typeof="mw:File"></span> </span><a href="Portal%3ALinux" title="Portal:Linux">Linux portal</a></b></li>
<li><b><span class="nowrap"><span class="noviewer" typeof="mw:File"><span></span></span> </span><a href="Portal%3AFree_and_open-source_software" title="Portal:Free and open-source software">Free and open-source software portal</a></b></li>
<li><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> <b>Category</b></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="The_FreeBSD_Project99" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="The_FreeBSD_Project99" style="font-size:114%;margin:0 4em">The <a href="FreeBSD" title="FreeBSD">FreeBSD</a> Project</div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="FreeBSD" title="FreeBSD">FreeBSD</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="FreeBSD_Core_Team" title="FreeBSD Core Team">FreeBSD Core Team</a></li>
<li><a href="FreeBSD_Documentation_License" title="FreeBSD Documentation License">FreeBSD Documentation License</a></li>
<li><a href="FreeBSD_Foundation" class="mw-redirect" title="FreeBSD Foundation">FreeBSD Foundation</a></li>
<li><a href="FreeBSD_Ports" title="FreeBSD Ports">FreeBSD Ports</a></li>
<li><a href="FreeBSD_version_history" title="FreeBSD version history">Version History</a></li>
<li>Kernel Normal Form</li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Subsystems</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Scheduling_(computing)#SCHEDULER" title="Scheduling (computing)">Scheduling</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="ALTQ" title="ALTQ">ALTQ</a></li>
<li><a href="ULE_scheduler" title="ULE scheduler">ULE scheduler</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="OS-level_virtualisation" class="mw-redirect" title="OS-level virtualisation">Virtualisation</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Chroot" title="Chroot">chroot</a></li>
<li><a href="FreeBSD_jail" title="FreeBSD jail">jail</a></li>
<li><a href="Bhyve" title="Bhyve">bhyve</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Computer_data_storage" title="Computer data storage">Storage</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="GEOM" title="GEOM">GEOM</a>
<ul><li><a href="Geom_raid5" title="Geom raid5">raid5</a></li>
<li><a href="GBDE" title="GBDE">GBDE</a></li>
<li><a href="Geli_(software)" title="Geli (software)">geli</a></li>
<li><a href="Logical_Volume_Manager_(Linux)" title="Logical Volume Manager (Linux)">LVM2</a></li>
<li><a href="Vinum_volume_manager" title="Vinum volume manager">vinum</a></li></ul></li>
<li><a href="BSD_disklabel" title="BSD disklabel">disklabel</a>
<ul><li><a href="Fdisk" title="Fdisk">fdisk</a></li></ul></li>
<li><a href="Unix_File_System" title="Unix File System">UFS</a>
<ul><li><a href="Soft_updates" title="Soft updates">Soft updates</a></li></ul></li>
<li><a href="Virtual_file_system" title="Virtual file system">VFS</a></li>
<li><a href="OpenZFS#ZFS_on_FreeBSD" title="OpenZFS">ZFS</a></li>
<li><a href="Highly_Available_STorage" title="Highly Available STorage">Highly Available STorage</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Computer_network" title="Computer network">Networking</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Comparison_of_open-source_wireless_drivers#FreeBSD" title="Comparison of open-source wireless drivers">802.11 drivers</a></li>
<li><a href="ALTQ" title="ALTQ">ALTQ</a></li>
<li><a href="Bluetooth_stack#FreeBSD" title="Bluetooth stack">Bluetooth</a></li>
<li><a href="Berkeley_Packet_Filter" title="Berkeley Packet Filter">BPF</a></li>
<li><a href="IPFilter" title="IPFilter">IPFilter</a></li>
<li><a href="Ipfirewall" title="Ipfirewall">ipfw</a></li>
<li><a href="Netgraph" title="Netgraph">Netgraph</a></li>
<li><a href="NDISwrapper#Similar_programs" title="NDISwrapper">NDIS</a></li>
<li><a href="PF_(firewall)" title="PF (firewall)">pf</a>
<ul><li><a href="Common_Address_Redundancy_Protocol" title="Common Address Redundancy Protocol">CARP</a></li>
<li><a href="Pfsync" title="Pfsync">pfsync</a></li></ul></li>
<li><a href="Stream_Control_Transmission_Protocol" title="Stream Control Transmission Protocol">SCTP</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Other</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Busdma" title="Busdma">busdma</a></li>
<li><a href="DTrace" title="DTrace">DTrace</a></li>
<li><a href="OpenPAM" title="OpenPAM">OpenPAM</a></li>
<li><a href="OpenBSM" title="OpenBSM">OpenBSM</a></li>
<li><a href="Portsnap" title="Portsnap">portsnap</a></li>
<li><a href="Kqueue" title="Kqueue">kqueue</a></li>
<li><a href="Moused" title="Moused">moused</a></li>
<li><a href="Systat_(BSD)" title="Systat (BSD)">systat</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">People</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Matthew_Dillon" title="Matthew Dillon">Matthew Dillon</a></li>
<li><a href="Jordan_Hubbard" title="Jordan Hubbard">Jordan Hubbard</a></li>
<li><a href="Poul-Henning_Kamp" title="Poul-Henning Kamp">Poul-Henning Kamp</a></li>
<li><a href="Michael_J._Karels" title="Michael J. Karels">Mike Karels</a></li>
<li><a href="Ben_Laurie" title="Ben Laurie">Ben Laurie</a></li>
<li><a href="Samuel_J_Leffler" class="mw-redirect" title="Samuel J Leffler">Sam Leffler</a></li>
<li><a href="Marshall_Kirk_McKusick" title="Marshall Kirk McKusick">Marshall Kirk McKusick</a></li>
<li><a href="Diomidis_Spinellis" title="Diomidis Spinellis">Diomidis Spinellis</a></li>
<li><a href="Robert_Watson_(computer_scientist)" title="Robert Watson (computer scientist)">Robert Watson</a></li>
<li><a href="Dru_Lavigne" title="Dru Lavigne">Dru Lavigne</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="List_of_products_based_on_FreeBSD" title="List of products based on FreeBSD">Derivatives</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="open-source72" scope="row" class="navbox-group" style="width:1%"><a href="Open-source_software" title="Open-source software">open-source</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="XNU" title="XNU">XNU</a>
<ul><li><a href="Darwin_(operating_system)" title="Darwin (operating system)">Darwin</a></li></ul></li>
<li><a href="DesktopBSD" title="DesktopBSD">DesktopBSD</a></li>
<li><a href="DragonFly_BSD" title="DragonFly BSD">DragonFly BSD</a></li>
<li><a href="TrueNAS" title="TrueNAS">FreeNAS</a></li>
<li><a href="FreeSBIE" title="FreeSBIE">FreeSBIE</a></li>
<li><a href="GhostBSD" title="GhostBSD">GhostBSD</a></li>
<li><a href="MidnightBSD" title="MidnightBSD">MidnightBSD</a></li>
<li><a href="M0n0wall" title="M0n0wall">m0n0wall</a>
<ul><li><a href="OPNsense" title="OPNsense">OPNsense</a></li>
<li><a href="PfSense" title="PfSense">pfSense</a></li></ul></li>
<li><a href="TrueOS" title="TrueOS">TrueOS</a></li>
<li><a href="GNU_variants#BSD_variants" title="GNU variants">GNU/kFreeBSD</a></li>
<li><a href="Gentoo/FreeBSD" class="mw-redirect" title="Gentoo/FreeBSD">Gentoo/FreeBSD</a></li>
<li><a href="XigmaNAS" title="XigmaNAS">XigmaNAS</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Proprietary_software" title="Proprietary software">proprietary</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Junos" class="mw-redirect" title="Junos">Junos</a></li>
<li><a href="MacOS" title="MacOS">macOS</a>, <a href="IOS" title="IOS">iOS</a>, <a href="TvOS" title="TvOS">tvOS</a>, and <a href="WatchOS" title="WatchOS">watchOS</a></li>
<li><a href="Nintendo_Switch_system_software" title="Nintendo Switch system software">Nintendo Switch OS</a></li>
<li><a href="OpenServer" title="OpenServer">OpenServer 10</a></li>
<li><a href="PlayStation_3_system_software" title="PlayStation 3 system software">PlayStation 3 OS</a></li>
<li><a href="PlayStation_4_system_software" title="PlayStation 4 system software">PlayStation 4 OS</a></li>
<li><a href="PlayStation_Vita_system_software" title="PlayStation Vita system software">PlayStation Vita OS</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-02-01" href="https://en.wikipedia.org/wiki/?title=Loadable_kernel_module&oldid=1273158506">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>